Solder paste misprint cleaning

ABSTRACT

A processor receives solder paste information, where the solder paste information describes a solder paste used in assembly of a printed circuit board. A processor determines a minimum magnetic force required for removing the solder paste from the printed circuit board based on the solder paste information. A processor receives electromagnet information, where the electromagnet information describes an electromagnet used in cleaning of a misprint of the solder paste on the printed circuit board. A processor determines a minimum amount of power to provide the electromagnet to induce the minimum magnetic force in the electromagnet, where the determination of the amount of power is based on the electromagnet information and the minimum magnetic force. A processor adjusts an amount of power applied to the electromagnet to at least the determined minimum amount of power to clean the misprint of the solder paste from the printed circuit board.

The present invention relates generally to the field of printed circuitboard assembly, and more particularly to cleaning misprints of solder.

During a printed circuit board (PCB) assembly process, solder is appliedto the surface of the PCB to adhere various circuit elements and devicesto the PCB. Most PCBs have pads, or areas of exposed copper, for a partto be affixed onto the PCB. However, in some circumstances, the solderis not correctly applied onto a pad of the PCB. This is often referredto as a misprint. When this occurs, the misapplied solder or the entirePCB is cleaned and the solder reapplied.

SUMMARY

Embodiments of the present invention provide a method, system, andprogram product to clean a misprint of solder paste on a PCB. Aprocessor receives solder paste information, wherein the solder pasteinformation describes a solder paste used in assembly of a printedcircuit board. A processor determines a minimum magnetic force requiredfor removing the solder paste from the printed circuit board based, atleast in part, on the solder paste information. A processor receiveselectromagnet information, wherein the electromagnet informationdescribes an electromagnet used in cleaning of a misprint of the solderpaste on the printed circuit board. A processor determines a minimumamount of power to provide the electromagnet to induce the minimummagnetic force in the electromagnet, wherein the determination of theamount of power is based, at least in part, on the electromagnetinformation and the minimum magnetic force. A processor adjust an amountof power applied to the electromagnet to at least the determined minimumamount of power to clean the misprint of the solder paste from theprinted circuit board.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

FIG. 1 is a detailed view of a solder paste, in accordance with anembodiment of the present invention.

FIG. 2 is a diagram illustrating a misprint cleaning environment, inaccordance with an embodiment of the present invention.

FIG. 3 illustrates operational processes of a cleaning program, on acomputing device within the environment of FIG. 2, in accordance with anembodiment of the present invention.

FIG. 4 depicts a block diagram of components of the computing deviceexecuting a cleaning program, in accordance with an embodiment of thepresent invention.

DETAILED DESCRIPTION

While solutions to misprint cleaning are known, they typically involveprocesses that may damage a PCB. One type of known solution is to sprayan aqueous solution to remove solder misprint from the PCB. However, thesolution may lead to the degradation of organic solderabilitypreservatives (OSP) on the PCB, which provide protection againstoxidation of the pads on the PCB. Additionally, disposal and handling ofthe solution requires additional concerns. Another known solution is theuse of ultrasonic sound waves to agitate the solder. Typically, the PCBside with misprinted solder is hung facing downwards and, whenultrasonic waves are applied, the solder falls off the PCB. However,some residual solder may remain, causing shorts or other issues when thePCB is reprinted. Since ultrasonic cleaning solution require gravity toremove the solder, small amounts of solder may remain. Also, thefrequencies and power of the ultrasound must be carefully selected ordamage to other components on the PCB may be damaged.

Embodiments of the present invention recognize that by using solderpaste with magnetic alloys to adhere elements to a PCB, an electromagnetmay be used to remove any solder paste that is misprinted.Advantageously, no chemical solutions are necessary, eliminating theenvironmental concerns of spray cleaning solutions. Additionally, theOSP are preserved and oxidization during re-use of a PCB is no longer aconcern. Furthermore, embodiments of the present invention may be usedin any orientation with complete removal of solder. Advantageously, thisremoves the concerns of short circuits caused by the remains of solderin a cleaning process.

The present invention may be a system, a method, and/or a computerprogram product. The computer program product may include a computerreadable storage medium (or media) having computer readable programinstructions thereon for causing a processor to carry out aspects of thepresent invention.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide or other transmission media (e.g., light pulsespassing through a fiber-optic cable), or electrical signals transmittedthrough a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, or either source code or object code written in anycombination of one or more programming languages, including an objectoriented programming language such as Smalltalk, C++ or the like, andconventional procedural programming languages, such as the “C”programming language or similar programming languages. The computerreadable program instructions may execute entirely on the user'scomputer, partly on the user's computer, as a stand-alone softwarepackage, partly on the user's computer and partly on a remote computeror entirely on the remote computer or server. In the latter scenario,the remote computer may be connected to the user's computer through anytype of network, including a local area network (LAN) or a wide areanetwork (WAN), or the connection may be made to an external computer(for example, through the Internet using an Internet Service Provider).In some embodiments, electronic circuitry including, for example,programmable logic circuitry, field-programmable gate arrays (FPGA), orprogrammable logic arrays (PLA) may execute the computer readableprogram instructions by utilizing state information of the computerreadable program instructions to personalize the electronic circuitry,in order to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the block may occur out of theorder noted in the figures. For example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts or carry out combinations of special purpose hardwareand computer instructions.

The present invention will now be described in detail with reference tothe Figures. FIG. 1 provides a detailed view of solder paste 100. Invarious embodiments, solder paste 100 is used for soldering circuitelements and devices to a PCB. Solder paste 100 is applied to pads(i.e., exposed conductive material such as copper) of a PCB to connectthe various circuit elements and devices to one another. The variouscircuit elements and devices are adhered to the PCB via solder paste100. Afterwards, solder paste 100 is heated to bond the circuit elementsand devices to the PCB while providing an electrical connection to thepads. In some scenarios, solder paste 100 is sprayed onto a PCB via ascreening process. A stencil, with open portions corresponding to thepads of the PCB, directs the sprayed solder paste 100 onto the pads.

In various embodiments, solder paste 100 comprises metal solder 110 andflux 120. Metal solder 110 is suspended in flux 120. Flux 120 providesan adhesive property to solder paste 100 temporarily holding the circuitelements and devices to the PCB. When heated, metal solder 110 melts,creating a mechanical and electrical bond to the PCB. In variousembodiments, metal solder 110 is comprised of one or more metal alloyswith magnetic properties. For example, metal solder 110 is selected toinclude at least one of the following alloys: Tin, Ag, Cu, Ni, Sb, Fe,and the like. One of ordinary skill will appreciate that any metal alloymay be chosen as metal solder 110 without deviating from the invention.In some scenarios, a metal alloy with strong magnetic properties may beselected to aid in the misprint cleaning process as discussed herein.

In some embodiments, metal solder 110 are formed into spherical shapesto provide a lower viscosity to solder paste 100. Typically, theparticulates of metal solder 110 range on a size of 5 to 75 microns. Inother embodiments, metal solder 110 has an irregular non-sphericalshape. Irregular non-spherical shapes prevent shearing and tearing in ascreen printing process of applying solder paste 100. One of ordinaryskill in the art will appreciate that any size and shape, as well as amixture of sizes and shapes, may be used for metal solder 110 withoutdeviating from the invention. Based on the desired properties of solderpaste 100, one of ordinary skill in the art may select a variety ofalloys, shapes and sizes of metal solder 110 without deviating from theinvention.

FIG. 2 is diagram illustrating cleaning environment, generallydesignated 200, in accordance with one embodiment of the presentinvention. Cleaning environment 100 includes cleaning device 210,computing device 220 and misprinted PCB 230. Cleaning device 210includes electromagnet 212, power source 214 and control circuit 216.Computing device 220 is communicatively coupled to cleaning device 210to provide control signals to power source 214 and control circuit 216.Computing device 220 includes cleaning program 222, solder data 224, andelectromagnet data 226. Misprinted PCB 230 includes at least some solderpaste 100 prior to heating and curing.

In various embodiments of the present invention, computing device 220can be a standalone device, a server, a laptop computer, a tabletcomputer, a netbook computer, a personal computer (PC), or a desktopcomputer. In another embodiment, computing device 220 represents acomputing system utilizing clustered computers and components to act asa single pool of seamless resources. In general, computing device 220can be any computing device or a combination of devices with access tocleaning program 222, solder data 224, and electromagnet data 226 and iscapable of operating or sending control signals to cleaning device 210.Computing device 220 may include internal and external hardwarecomponents, as depicted and described in further detail with respect toFIG. 4.

In various embodiments, cleaning program 222 is stored on computingdevice 220. However, in other embodiments, cleaning program 222 may bestored externally and accessed through a communication network, such asnetwork 240. Network 240 can be, for example, a local area network(LAN), a wide area network (WAN) such as the Internet, or a combinationof the two, and may include wired, wireless, fiber optic or any otherconnection known in the art. In general, network 240 can be anycombination of connections and protocols that will supportcommunications between computing device 220, cleaning device 210 andother devices (not shown), in accordance with a desired embodiment ofthe present invention.

In various embodiments, cleaning device 210 includes electromagnet 212,power source 214 and control circuit 216. In FIG. 2, power source 214 isdepicted as a variable current source to induce a magnetic field inelectromagnet 212. The amount of current flowing through electromagnet212 varies the magnetic force exerted by electromagnet 212. As discussedherein, based on the characteristics of electromagnet 212 and solderpaste 100, power source 214 varies the current applied to electromagnet212 to generate the desired magnetic force to pull solder paste 100 frommisprinted PCB 230. One of ordinary skill in the art will appreciatethat power source 214 may be any type of circuit or device that willvary power to electromagnet 210, in order to vary the magnetic forcegenerated by electromagnet 210, without deviating from the invention.For example, a variable voltage source may be used as power source 220.

Control circuit 216 controls operation of electromagnet 212, permittingpower source 214 to induce a magnetic force in electromagnet 212. Insome embodiments and scenarios, cleaning device 210 is coupled to arobotic arm or other moving device (not shown). The robotic arm movescleaning device 210, and electromagnet 212, to an area or areas abovemisprinted PCB 230 with misprinted solder paste 100. During travel toand from misprinted areas, control circuit 216 disengages and reengageselectromagnet 212 from power source 214. In other embodiments andscenarios, cleaning device 210 is a handheld unit to be used by anoperator. While holding cleaning device 210, the operator engagescontrol circuit 216 to engage electromagnet 212. The operator moveelectromagnet 212 over the areas of misprinted PCB 230 with misprintedsolder paste 100, engaging cleaning device 210 to provide a magneticforce from electromagnet 212 to remove the misprinted solder paste 100from misprinted PCB 230.

In various embodiments, cleaning program 222 determines a requiredmagnetic force of to induce in electromagnet 212 in order to removemisprinted solder paste 100 from PCB 230. Cleaning program 222determines a minimum magnetic force to remove misprinted solder paste100 based on the gravitational force applied to the metal solder 110,the gravitational force applied to flux 120, and the adhesive force offlux 120 adhering to PCB 230. By applying a force equal to or greaterthan the minimum magnetic force, which is the sum of the component,electromagnet 212 removes solder paste 100 from PCB 230 without damagingPCB 230 nor leaving residual solder paste 100 such as other knownsolutions.

In various embodiments, cleaning program 222 determines a minimummagnetic force for electromagnet 212 based on the following equation:F _(m) >M _(s) g+M _(f) g+F _(a)

Where F_(m) is the minimum magnetic force, M_(s) is the mass of solderin the misprinted solder paste 100, M_(f) is the mass of flux in themisprinted solder paste 100, F_(a) is the adhesive force of the flux inthe misprinted solder paste 100, and g is a gravitational constant.Cleaning program 222 determines the mass of the flux and solder inmisprinted solder paste 100 based on the amount of the misprinted solderpaste 100 (e.g., volume) present on a pad of PCB 230, a mixture ratio ofthe flux and solder in solder paste 100, and the density of the flux andsolder. Solder data 224 includes the mixture ratio of the solder paste,as well as the densities of the metal solder 110 and flux 120 used insolder paste 100.

In some embodiments and scenarios, solder data 224 includes a pad sizeassociated with the various pads of PCB 230. Based on the pad size andassociated solder paste 100 applied to pads of that size, cleaningprogram 222 determines an amount of misprinted solder paste 100 whencleaning a pad of the identified size. In some scenarios, pad size on aPCB is uniform and the amount of solder paste 100 applied to all pads isuniform. In such scenarios, cleaning program 222 determines the amountof misprinted solder paste 100 to be constant. In other scenarios,different sized pads are present on PCB 230. Based on the identified padto be cleaned and the size of that pad, cleaning program 222 determinesthe amount of misprinted solder paste 100.

In other embodiments and scenarios, computing device 210 iscommunicatively coupled to a camera or other visual inspection device(not shown) to retrieve images of misprinted solder paste 100 on a padof PCB 230. Based on the retrieved image, cleaning program determinesthe size of the area covered by misprinted solder paste 100. In somescenarios, solder data 224 includes an average thickness of appliedsolder paste. Based on the thickness and surface area of the misprintedsolder paste, cleaning program 222 determines an amount of misprintedsolder paste 100. In some scenarios, cleaning program 222 determines athickness of misprinted solder paste 100 based on the retrieved images.

In various embodiments, cleaning program 222 determines an amount ofpower required by power source 214 in order to induce the determinemagnetic force in electromagnet 212. Electromagnet data 226 includesinformation describing the characteristics of electromagnet 212. Forexample, electromagnet data 226 includes one or more of the followingcharacteristics of electromagnet 212: the number of turns in a coil ofelectromagnet 212; the length of the coil for electromagnet 212; thematerial used as a core in electromagnet 212; the permeability of thecore used in electromagnet 212; and the size and shape of the core ofelectromagnet 212. Based on the characteristics of electromagnet 212stored in electromagnet data 226, cleaning program 222 determines anamount of power require by power source 214 to generate the requiredmagnetic force to remove solder paste 100 from PCB 230. For example,cleaning program 222 determines the amount of current required by powersource 214 to generate a magnetic force strong enough to remove solderpaste 100 from PCB 230.

In various embodiments, cleaning program 222 adjusts power source 214 toprovide the determined power to electromagnet 212 required to removesolder paste 100 from PCB 230. In some embodiments, cleaning program 222controls a robotic arm to move cleaning device 210 to an area above PCB230 with misprinted solder paste 100. Once electromagnet 212 is abovethe misprinted solder paste 100, cleaning program 222 engages controlcircuit 216 to induce the determined magnetic force in electromagnet212. In other embodiments, cleaning device 210 is hand operated. Anoperator adjusts the power of power source 214 to match the determinedvalue by cleaning program 222. The operator moves cleaning device 210 tothe area of PCB 230 with misprinted solder paste 100. The operatorengages control circuit 216 to induce a magnetic force in electromagnet212 strong enough to remove misprinted solder paste 100 from PCB 230.

FIG. 3 illustrates operational processes, generally designated 300, ofcleaning program 222. In process 302, cleaning program 222 receivessolder data 224. Solder data 224 includes information indicating thecharacteristics of solder paste 100 used on PCB 230. For example,characteristic of solder paste 100 include, but are not limited to, thealloys of metal solder 110, the type of flux 120, the mixture ratio ofmetal solder 110 and flux 120, the density of the alloys used in metalsolder 110, the density of flux 120, the adhesive strength of flux 120,the shape and size of the particulates of metal solder 110, and theamount of solder paste 100 used per application to PCB 230 or an amountassociated with a pad or pads of a certain size. In process 304,cleaning program 222 receives a location of misprinted solder paste 100on PCB 230. In some embodiments and scenarios, cleaning program 222 isprovided a coordinate (e.g., x and y location) on PCB 230 for cleaning amisprint. In other embodiments and scenarios, cleaning program 222 isprovided a pad identifier or information indicating a pad of PCB 230where a misprint occurred. Cleaning program 222 identifies the locationof the misprint based on the received pad identifier.

In process 306, cleaning program 222 determines a minimum magnetic forcerequired to remove misprinted solder paste 100 from PCB 230. Based onsolder data 224 and the amount of solder paste 100 to be removed,cleaning program 222 determines a strength of a magnetic force requiredto remove the solder paste 100. In process 308, cleaning program 222receives electromagnet data 226. Electromagnet data 226 includesinformation indicating the characteristics of electromagnet 212. Forexample, electromagnet data 226 includes, but is not limited to, thefollowing: the number of turns in a coil of electromagnet 212; thelength of the coil for electromagnet 212; the material used as a core inelectromagnet 212; the permeability of the core used in electromagnet212; and the size and shape of the core of electromagnet 212. Based onelectromagnet data 226, cleaning program 222 determines an amount ofpower required to generate the magnetic force determined in process 306(process 310).

In process 312, cleaning program 222 adjusts power source 214 to thedetermined power in process 310. In process 314, cleaning program 222moves cleaning device 210 to the misprint location. Cleaning program 222positions cleaning device 210 such that electromagnet 212 is above themisprinted solder paste 100. In process 316, cleaning program 222activates cleaning device 210 by engaging control unit 216. Control unit216 provides power from power source 214 to electromagnet 216. Whenprovided the determined power in process 310, electromagnet 212generates the magnetic force determined in process 306, which in turnproduces a magnetic force strong enough to lift the misprinted solderpaste 100 from PCB 230. In some embodiments and scenarios, more than onemisprint location is received in process 304. Under such scenarios,cleaning program repeats processes 306 to 316 for each misprintlocation. If different types or amounts of solder paste 100 are used,then cleaning program 222 changes the power of power source 214 tocorrespond to the required magnetic force for each misprint location.

In some embodiments and scenarios, cleaning program 222 receives one ormore images of PCB 230. Additionally, cleaning program 222 receives oneor more images of PCBs with correctly printed solder paste. Based ofcomparisons of images of the currently evaluated PCB 230 and knowncorrectly printed PCBs, cleaning program 222 determines the locations ofmisprinted solder paste 100. By visually inspecting PCBs during theassembly process, cleaning program 222 determines the locations ofmisprints automatically. In such embodiments and scenarios, cleaningdevice 210 is connected to a controllable robotic arm. Cleaning program222 sends signals or instruction to the robotic arm to move the cleaningdevice 210 and electromagnet 212 over the identified misprints bycomputer vision. Once over the misprints, cleaning program 222 engagescontrol unit 216 to activate electromagnet, thereby automaticallycleaning PCB 230.

FIG. 4 depicts a block diagram, 400, of components of computing device220, in accordance with an illustrative embodiment of the presentinvention. It should be appreciated that FIG. 4 provides only anillustration of one implementation and does not imply any limitationswith regard to the environments in which different embodiments may beimplemented. Many modifications to the depicted environment may be made.

Computing device 220 includes communications fabric 402, which providescommunications between computer processor(s) 404, memory 406, persistentstorage 408, communications unit 410, and input/output (I/O)interface(s) 412. Communications fabric 402 can be implemented with anyarchitecture designed for passing data and/or control informationbetween processors (such as microprocessors, communications and networkprocessors, etc.), system memory, peripheral devices, and any otherhardware components within a system. For example, communications fabric402 can be implemented with one or more buses.

Memory 406 and persistent storage 408 are computer-readable storagemedia. In this embodiment, memory 406 includes random access memory(RAM) 414 and cache memory 416. In general, memory 406 can include anysuitable volatile or non-volatile computer-readable storage media.

Cleaning program 222, solder data 224 and electromagnet data 226 arestored in persistent storage 408 for execution and/or access by one ormore of the respective computer processors 404 via one or more memoriesof memory 406. In this embodiment, persistent storage 408 includes amagnetic hard disk drive. Alternatively, or in addition to a magnetichard disk drive, persistent storage 408 can include a solid state harddrive, a semiconductor storage device, read-only memory (ROM), erasableprogrammable read-only memory (EPROM), flash memory, or any othercomputer-readable storage media that is capable of storing programinstructions or digital information.

The media used by persistent storage 408 may also be removable. Forexample, a removable hard drive may be used for persistent storage 408.Other examples include optical and magnetic disks, thumb drives, andsmart cards that are inserted into a drive for transfer onto anothercomputer-readable storage medium that is also part of persistent storage408.

Communications unit 410, in these examples, provides for communicationswith other data processing systems or devices, including resources ofnetwork 240. In these examples, communications unit 410 includes one ormore network interface cards. Communications unit 410 may providecommunications through the use of either or both physical and wirelesscommunications links. Cleaning program 222, solder data 224 andelectromagnet data 226 may be downloaded to persistent storage 408through communications unit 410.

I/O interface(s) 412 allows for input and output of data with otherdevices that may be connected to computing device 220. For example, I/Ointerface 412 may provide a connection to external devices 418 such as akeyboard, keypad, a touch screen, and/or some other suitable inputdevice. External devices 418 can also include portable computer-readablestorage media such as, for example, thumb drives, portable optical ormagnetic disks, and memory cards. Software and data used to practiceembodiments of the present invention, e.g., cleaning program 222, solderdata 224 and electromagnet data 226, can be stored on such portablecomputer-readable storage media and can be loaded onto persistentstorage 408 via I/O interface(s) 412. I/O interface(s) 412 also connectto a display 420.

Display 420 provides a mechanism to display data to a user and may be,for example, a computer monitor, or a television screen.

The programs described herein are identified based upon the applicationfor which they are implemented in a specific embodiment of theinvention. However, it should be appreciated that any particular programnomenclature herein is used merely for convenience, and thus theinvention should not be limited to use solely in any specificapplication identified and/or implied by such nomenclature.

It is to be noted that the term(s) “Smalltalk” and the like may besubject to trademark rights in various jurisdictions throughout theworld and are used here only in reference to the products or servicesproperly denominated by the marks to the extent that such trademarkrights may exist.

What is claimed is:
 1. A computer program product comprising: one ormore computer-readable storage media and program instructions stored onthe one or more computer-readable storage media, the programinstructions comprising: program instructions to receive solder pasteinformation, wherein solder paste information includes (i) a density ofa metal solder in a solder paste, (ii) a density of a flux in the solderpaste, (iii) an adhesive force of the flux, and (iv) at least onemagnetic property of the metal solder; program instructions to receiveelectromagnet information, wherein the electromagnet informationdescribes an electromagnet used in cleaning of a misprint of the solderpaste on the printed circuit board; program instructions to receive animage of the printed circuit board; program instructions to compare theimage of the printed circuit board to a second image, wherein the secondimage depicts a printed circuit board with correctly printed solderpaste; program instructions to determine at least one misprint locationof the solder paste on the printed circuit board when at least onemisprint is detected in response to the comparison of the image of theprinted circuit board and the second image; program instructions to movethe electromagnet to the at least one misprint location; programinstructions to determine an amount of solder paste present in the atleast one misprint location, wherein the determination of the amount ofsolder paste present in the at least one misprint location is based onthe image of the at least one misprint location and the solder pasteinformation; program instructions to determine a component force appliedto the solder paste based on the amount of solder paste present in theat least one misprint location and the solder paste information; programinstructions to determine a minimum amount of power to provide theelectromagnet to induce a minimum magnetic force in the electromagnet,wherein the determination of the minimum magnetic force is based on anequation: F_(m)>M_(s)g+M_(f)g+F_(a), wherein F_(m) is the minimummagnetic force, M_(s) is the mass of metal solder in the at least onemisprint location, M_(f) is the mass of the flux in the at least onemisprint location, F_(a) is an adhesive force of the flux, and g is agravitational constant; program instructions to adjust an amount ofpower applied to the electromagnet to at least the determined minimumamount of power to clean the misprint of the solder paste at the atleast one misprint location from the printed circuit board; and programinstructions to activate the electromagnet, wherein the electromagnetremoves the solder paste from the at least one misprint location uponactivation.